/*
 * SerializableSubRoute.java
 * 
 * Copyright 2008 David D. Emory
 * 
 * This file is part of Five Points. See <http://www.fpdev.org> for
 * additional information regarding the project.
 * 
 * Five Points is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 * 
 * Five Points is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License
 * along with Five Points.  If not, see <http://www.gnu.org/licenses/>.
 */
package org.fpdev.core.transit;

import java.io.Serializable;
import java.util.Iterator;
import java.util.List;
import java.util.Map;

/**
 *
 * @author demory
 */
public class SerializableSubRoute implements Serializable {

  private String id_,  name_,  rteSuffix_;
  private TransitPath.Type pathType_;
  private List<Integer> linkIDs_;
  private List<SerializableStop> stops_;
  private Map<String, Timetable> timeTables_;

  public SerializableSubRoute(String id, String name, String rteSuffix, TransitPath.Type pathType, List<Integer> linkIDs, List<SerializableStop> stops, Map<String, Timetable> timeTables) {
    id_ = id;
    name_ = name;
    rteSuffix_ = rteSuffix;
    pathType_ = pathType;
    linkIDs_ = linkIDs;
    stops_ = stops;
    timeTables_ = timeTables;
  }

  public String getID() {
    return id_;
  }

  public String getName() {
    return name_;
  }

  public String getRouteSuffix() {
    return rteSuffix_;
  }

  public TransitPath.Type getPathType() {
    return pathType_;
  }

  public Iterator<Integer> getLinkIDs() {
    return linkIDs_.iterator();
  }

  public Map<String, Timetable> getTimeTableMap() {
    return timeTables_;
  }

  public Iterator<SerializableStop> getStops() {
    return stops_.iterator();
  }
  /*
  public void initStops(TransitPath tpath, CEngine engine) {
  Iterator<SerializableStop> stops = stops_.iterator();
  while(stops.hasNext()) stops.next().init(tpath, engine);
  } */
}
